package com.ynet.middleground.approve.dto;

import java.io.Serializable;
import java.util.Date;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * @author liulx
 * @description 流程任务评论传输对象
 * @date 2019-11-20 23:42
 */
@Data
@ApiModel(value = "流程任务评论信息传输对象", description = "审批流程中任务评论信息")
public class CommentDTO implements Serializable {

    private static final long serialVersionUID = 9172739797643273663L;

    @ApiModelProperty(value = "评论ID", notes = "评论ID", dataType = "String")
    private String id;

    @ApiModelProperty(value = "审批人ID", notes = "审批人ID", dataType = "String")
    private String userId;

    @ApiModelProperty(value = "审批时间", notes = "审批时间", dataType = "java.util.Date")
    private Date time;

    @ApiModelProperty(value = "任务ID", notes = "任务ID", dataType = "String")
    private String taskId;

    @ApiModelProperty(value = "任务名称", notes = "任务名称", dataType = "String")
    private String taskName;

    @ApiModelProperty(value = "流程实例ID", notes = "流程实例ID", dataType = "String")
    private String processInstanceId;

    @ApiModelProperty(value = "审批意见，用于存放流程产生的信息，比如审批意见、批注等（若type=transfer，审批意见示例：141,转办至,142）",
        notes = "审批意见，用于存放流程产生的信息，比如审批意见、批注等（若type=transfer，审批意见示例：141,转办至,142）", dataType = "String")
    private String fullMessage;

    @ApiModelProperty(value = "任务删除理由", notes = "任务删除理由", dataType = "String")
    private String deleteReason;

    @ApiModelProperty(value = "备注类型:comment一般备注；transfer转办备注", notes = "备注类型:comment一般备注；transfer转办备注",
        dataType = "String")
    private String type;

    @ApiModelProperty(value = "处理意见详情", notes = "处理意见详情")
    private CommentExtDTO commentExtDTO;
}
